Qu'est-ce que chaos monkey ?

"Chaos Monkey" est un outil créé et développé par Netflix, la célèbre plateforme de diffusion en streaming, pour tester la résilience de son infrastructure informatique. Il fait partie d'un ensemble d'outils appelé "Simian Army" (l'armée simienne) utilisé par Netflix pour simuler différentes situations de panne ou de dysfonctionnement du système.

Le Chaos Monkey est un "singio-monkey" spécifique dont la tâche principale est de provoquer volontairement des pannes aléatoires à différents niveaux du système de Netflix. Cela peut inclure des crashs de serveurs, le blocage du réseau ou même la déconnexion de certains services clés. L'idée est de tester la capacité de l'infrastructure de Netflix à résister et à se rétablir automatiquement dans ces conditions.

En provoquant ces pannes de manière contrôlée, Netflix peut détecter et résoudre les problèmes potentiels avant qu'ils ne se produisent réellement en production. Cela permet d'améliorer la fiabilité et la résilience de leur système, en s'assurant qu'il n'y ait pas de points de défaillance uniques, et en permettant aux équipes de développement et d'exploitation d'acquérir de l'expérience dans la gestion de situations de crise.

En plus du Chaos Monkey, Netflix utilise d'autres singio-monkeys tels que le "Latency Monkey" (qui simule des retards dans les réponses des serveurs) ou le "Conformity Monkey" (qui détecte les composants ou les configurations non conformes aux bonnes pratiques). Ces outils s'inscrivent dans une approche appelée "architecture du chaos", où les pannes sont considérées comme inévitables et où l'accent est mis sur la résilience et la capacité à éviter les impacts majeurs sur les utilisateurs finaux.

Le Chaos Monkey a inspiré d'autres entreprises et organisations à adopter des approches similaires pour tester la résilience de leurs systèmes informatiques. L'objectif est de s'assurer que l'infrastructure peut résister à des situations de pannes ou de dysfonctionnement, garantissant ainsi une meilleure expérience utilisateur et une disponibilité continue des services.